home *** CD-ROM | disk | FTP | other *** search
/ CD Actual 22 / PC Actual CD 22.iso / linux / xfree86 / DOC / README.FreeBSD < prev    next >
Encoding:
Text File  |  1998-01-07  |  15.2 KB  |  727 lines

  1.  
  2.  
  3.  
  4.  
  5.  
  6.  
  7.  
  8.  
  9.  
  10.              README for XFree86 on FreeBSD
  11.  
  12.                Rich Murphey, David Dawes
  13.  
  14.                   16 May 1997
  15.  
  16.  
  17.  
  18. 1.  What and Where is XFree86?
  19.  
  20. XFree86 is a port of X11R6.3 that supports several versions of Intel-based
  21. Unix.  It is derived from X386 1.2, which was the X server distributed with
  22. X11R5.    This release consists of many new features and performance improvements
  23. as well as many bug fixes.
  24.  
  25. For further details about this beta release, please refer to the Release Notes.
  26.  
  27. See the Copyright Notice.
  28.  
  29. Binaries for XFree86 on FreeBSD 2.1.x, 2.2.x and 3.0-current are available
  30. from:
  31.  
  32. ftp://ftp.XFree86.org/pub/XFree86/beta/
  33.  
  34. Send email to Rich-Murphey@Rice.edu or XFree86@XFree86.org if you have comments
  35. or suggestions about this file and we'll revise it.
  36.  
  37.  
  38. 2.  Installing the Binaries
  39.  
  40. If you want to save space, first select which archives you want to unpack.  If
  41. you can't decide what to pick and you have 52Mb of disk space, it's safe to
  42. unpack everything.
  43.  
  44. At a minimum you need to unpack the 'required' X33*.tgz archives plus at least
  45. one server that matches your vga card.    You'll need 13Mb for the minimum
  46. required run-time binaries only.
  47.  
  48.       Required:
  49.  
  50.           X33bin.tgz
  51.             all the executable X client applications and shared
  52.             libs
  53.  
  54.           X33fnts.tgz
  55.             the misc, 75 dpi and PEX fonts
  56.  
  57.           X33lib.tgz
  58.             data files needed at runtime
  59.  
  60.       Required unless you have already customized your configuration files:
  61.  
  62.  
  63.  
  64.  README for XFree86 on FreeBSD
  65.  
  66.  
  67.  
  68.  
  69.  
  70.  README for XFree86 on FreeBSD
  71.  
  72.  
  73.  
  74.           X33cfg.tgz
  75.             customizable xinit and xdm runtime configuration files
  76.  
  77.       Choose at least one server:
  78.  
  79.           X338514.tgz
  80.             8-bit color for IBM 8514 and true compatibles.
  81.  
  82.           X33AGX.tgz
  83.             8 and 16-bit color for AGX and XGA boards.
  84.  
  85.           X33I128.tgz
  86.             8 and 16-bit color for I128 boards.
  87.  
  88.           X33Ma32.tgz
  89.             8 and 16-bit color for ATI Mach32 boards.
  90.  
  91.           X33Ma64.tgz
  92.             8, 16 and 32-bit color for ATI Mach64 boards.
  93.  
  94.           X33Ma8.tgz
  95.             8-bit color for ATI Mach8 boards.
  96.  
  97.           X33Mono.tgz
  98.             1-bit monochrome for VGA, Super-VGA, Hercules, and oth-
  99.             ers.
  100.  
  101.           X33P9K.tgz
  102.             8, 16, and 32-bit color for Weitek P9000 boards (Dia-
  103.             mond Viper).
  104.  
  105.           X33S3.tgz
  106.             8, 16 and 32-bit color for S3 boards.
  107.  
  108.           X33S3V.tgz
  109.             8 and 16-bit color for S3 ViRGE boards.
  110.  
  111.           X33SVGA.tgz
  112.             >=8-bit color for Super-VGA cards.
  113.  
  114.           X33VG16.tgz
  115.             4-bit color for VGA and Super-VGA cards
  116.  
  117.           X33W32.tgz
  118.             8-bit Color for ET4000/W32, /W32i, /W32p and ET6000
  119.             cards.
  120.  
  121.           X339GAN.tgz
  122.             8-bit color for PC98 GA-98NB/WAP boards
  123.  
  124.           X339480.tgz
  125.             8-bit color for PC98 PEGC
  126.  
  127.  
  128.  
  129.  
  130.  
  131.  
  132.  
  133.  
  134.  
  135.  
  136.  README for XFree86 on FreeBSD
  137.  
  138.  
  139.  
  140.           X339NKV.tgz
  141.             8-bit color for PC98 NEC-CIRRUS/EPSON NKV/NKV2 boards
  142.  
  143.           X339WBS.tgz
  144.             8-bit color for PC98 WAB-S boards
  145.  
  146.           X339WEP.tgz
  147.             8-bit color for PC98 WAB-EP boards
  148.  
  149.           X339WSN.tgz
  150.             8-bit color for PC98 WSN-A2F boards
  151.  
  152.           X339EGC.tgz
  153.             4-bit color for PC98 EGC
  154.  
  155.           X339TGU.tgz
  156.             8 and 16-bit color for PC98 Trident Cyber9320/9680
  157.             boards
  158.  
  159.           X339NS3.tgz
  160.             8 and 16-bit color for PC98 NEC S3 boards
  161.  
  162.           X339SPW.tgz
  163.             8 and 16-bit color for PC98 S3 PW/PCSKB boards
  164.  
  165.           X339LPW.tgz
  166.             8 and 16-bit color for PC98 S3 PW/LB boards
  167.  
  168.           X339GA9.tgz
  169.             8 and 16-bit color for PC98 S3 GA-968 boards
  170.  
  171.           X33nest.tgz
  172.             A nested server running as a client window on another
  173.             display.
  174.  
  175.       Optional:
  176.  
  177.           X32doc.tgz
  178.             READMEs
  179.  
  180.           X32ps.tgz
  181.             READMEs in PostScript
  182.  
  183.           X32html.tgz
  184.             READMEs in HTML
  185.  
  186.           X32man.tgz
  187.             man pages
  188.  
  189.           X32f100.tgz
  190.             100dpi fonts
  191.  
  192.           X32fscl.tgz
  193.             Speedo and Type1 fonts
  194.  
  195.  
  196.  
  197.  
  198.  
  199.  
  200.  
  201.  
  202.  README for XFree86 on FreeBSD
  203.  
  204.  
  205.  
  206.           X32fnon.tgz
  207.             Japanese, Chinese and other non-english fonts
  208.  
  209.           X32fcyr.tgz
  210.             Cyrillic fonts
  211.  
  212.           X32fsrv.tgz
  213.             the font server and its man page
  214.  
  215.           X32prog.tgz
  216.             config, lib*.a and *.h files needed only for compiling
  217.  
  218. 2.1  Full Install:
  219.  
  220.   1.   You must be logged in as root to unpack the archives because several
  221.       executables are set-user-id.  Otherwise the server may abort if you
  222.       unpack it as an ordinary user.  You must also use a ``umask'' value of
  223.       022 because the X server requires special permissions.
  224.  
  225.         % su
  226.         # umask 022
  227.  
  228.  
  229.  
  230.   2.  If you have 52Mb free in the /usr partition ``cd /usr'' and skip to no.
  231.       4.  Otherwise, create a directory on another partition and sym link it
  232.       into /usr:
  233.  
  234.  
  235.         # cd /usr/local
  236.         # mkdir X11R6
  237.         # ln -s /usr/local/X11R6 /usr/X11R6
  238.  
  239.  
  240.  
  241.   3.  Run the preinst.sh script
  242.  
  243.         # cd /usr/X11R6
  244.         # sh preinst.sh
  245.  
  246.  
  247.  
  248.   4.  Unpack everything:
  249.  
  250.       If you are using sh (as root usually does):
  251.  
  252.  
  253.         # for i in X33*.tgz; do
  254.         #    tar -x -z --unlink -f $i
  255.         # done
  256.  
  257.  
  258.  
  259.       Else, if you are using csh:
  260.  
  261.  
  262.  
  263.  
  264.  
  265.  
  266.  
  267.  
  268.  README for XFree86 on FreeBSD
  269.  
  270.  
  271.  
  272.         % foreach i (X33*.tgz)
  273.         %    tar -x -z --unlink -f $i
  274.         % end
  275.  
  276.  
  277.  
  278.   5.  Create a symbolic link ``X'' that points to the server that matches your
  279.       video card.  The XF86_* man pages list which vga chip sets are supported
  280.       by each server.  For example, if you have an ET4000 based card you will
  281.       use the XF86_SVGA server:
  282.  
  283.  
  284.         # cd /usr/X11R6/bin; rm X; ln -s XF86_SVGA X
  285.  
  286. 2.2  Minimal Install:
  287.  
  288. First do numbers 1, 2 and 4 above. Then unpack the required archives:
  289.  
  290.       # for i in bin fnts lib xicf; do
  291.       #   tar -x -z --unlink -f  X33$i.tgz
  292.       # done
  293.  
  294. Then unpack a server archive corresponding to your vga card.  The server man
  295. pages, X11R6/man/man1/XF86_*, list the vga chip sets supported by each server.
  296. For example, if you have an ET4000 based card you will use the XF86_SVGA
  297. server:
  298.  
  299.       # tar -x -z --unlink -f X33SVGA.tgz
  300.       # cd /usr/X11R6/bin; rm X; ln -s XF86_SVGA X
  301.  
  302. 2.3  After either Full or Minimal Install above:
  303.  
  304. Add /usr/X11R6/bin to the default path for sh in /etc/profile and for csh in
  305. /etc/csh.login if they are not already there:
  306.  
  307.       # echo 'set path = ($path /usr/X11R6/bin)' >>/etc/csh.login
  308.       # echo 'PATH=$PATH:/usr/X11R6/bin' >>/etc/profile
  309.  
  310. Or make sure all who use X put /usr/X11R6/bin in their shell's ``path'' vari-
  311. able.
  312.  
  313. Next either reboot or invoke ldconfig as root to put the shared libraries in
  314. ld.so's cache:
  315.  
  316.       # ldconfig /usr/lib /usr/local/lib /usr/X11R6/lib
  317.  
  318. If you had already configured X11R6/lib/X11/xinit/xinitrc or
  319. X11R6/lib/X11/xdm/* omit the xinit-config or xdm-config archive or unpack it
  320. separately and merge in your customizations.
  321.  
  322. The fscl and f100 archives are optional and can be omitted if you are short on
  323. space.    The optional link archive allows you to reconfigure and customize a X
  324. server binary.    The optional prog archive is needed only for writing or compil-
  325. ing X applications.  The optional pex archive contains pex clients and
  326.  
  327.  
  328.  
  329.  
  330.  
  331.  
  332.  
  333.  
  334.  README for XFree86 on FreeBSD
  335.  
  336.  
  337.  
  338. libraries for building 3D graphics applications.
  339.  
  340.      NOTE: You don't need to uncompress the font files, but if you uncom-
  341.      press them anyway you must run mkfontdir in the corresponding font
  342.      directory; otherwise your server will abort with the message ``could
  343.      not open default font 'fixed'''.
  344.  
  345.  
  346. 3.  Installing The Display Manager (xdm)
  347.  
  348. The display manager makes your PC look like an X terminal.  That is, it pre-
  349. sents you with a login screen that runs under X.
  350.  
  351. The easiest way to automatically start the display manager on boot is to add a
  352. line in /etc/ttys to start it on one of the unoccupied virtual terminals:
  353.  
  354.       ttyv4    "/usr/X11R6/bin/xdm -nodaemon" xterm    on secure
  355.  
  356. You should also make sure that /usr/X11R6/bin/X is a symbolic link to the
  357. Xserver that matches your video card or edit the file Xservers in
  358. /usr/X11R6/lib/X11/xdm to specify the pathname of the X server.
  359.  
  360. The change to /etc/ttys won't take effect until you either reboot or ``kill
  361. -HUP 1'' to force initd to reread /etc/ttys.  You can also test the display
  362. manager manually by loging in as root on the console and typing ``xdm -nodae-
  363. mon''.
  364.  
  365.  
  366. 4.  Configuring X for Your Hardware
  367.  
  368. The XF86Config file tells the X server what kind of monitor, video card and
  369. mouse you have.  You must create it to tell the server what specific hardware
  370. you have.
  371.  
  372. It is strongly recommended that you use either the `XF86Setup' utility (which
  373. requires the VGA16 server to be installed), or the `xf86config' utility to gen-
  374. erate an XF86Config file.
  375.  
  376. In order to protect your hardware from damage, the server no longer will read
  377. XF86Config files from a user's home directory, but requires that it be in
  378. /etc/XF86Config, /usr/X11R6/lib/X11/XF86Config.hostname or
  379. /usr/X11R6/lib/X11/XF86Config.
  380.  
  381. You'll need info on your hardware:
  382.  
  383.    o Your mouse type, baud rate and its /dev entry.
  384.  
  385.    o The video card's chipset (e.g. ET4000, S3, etc).
  386.  
  387.    o Your monitor's sync frequencies.
  388.  
  389. The easiest way to find which device your mouse is plugged into is to use
  390. ``cat'' or ``kermit'' to look at the output of the mouse.  Connect to it and
  391. just make sure that it generates output when the mouse is moved or clicked:
  392.  
  393.  
  394.  
  395.  
  396.  
  397.  
  398.  
  399.  
  400.  README for XFree86 on FreeBSD
  401.  
  402.  
  403.  
  404.       % cat < /dev/tty00
  405.  
  406. If you can't find the right mouse device then use ``dmesg|grep sio'' to get a
  407. list of devices that were detected upon booting:
  408.  
  409.       % dmesg|grep sio
  410.       sio0 at 0x3f8-0x3ff irq 4 on isa
  411.  
  412. Then double check the /dev entries corresponding to these devices.  Use the
  413. script /dev/MAKEDEV to create entries if they don't already exist:
  414.  
  415.       % cd /dev
  416.       % sh MAKEDEV tty00
  417.  
  418. If you plan to fine tune the screen size or position on your monitor you'll
  419. need the specs for sync frequencies from your monitor's manual.
  420.  
  421.  
  422. 5.  Running X
  423.  
  424. 8mb of memory is a recommended minimum for running X.  The server, window man-
  425. ager, display manager and an xterm take about 8Mb of virtual memory themselves.
  426. Even if their resident set size is smaller, on a 8Mb system that leaves very
  427. space for other applications such as gcc that expect a few meg free.  The R6 X
  428. servers may work with 4Mb of memory, but in practice compilation while running
  429. X can take 5 or 10 times as long due to constant paging.
  430.  
  431. The easiest way for new users to start X windows is to type ``startx >&
  432. startx.log''.  Error messages are lost unless you redirect them because the
  433. server takes over the screen.
  434.  
  435. To get out of X windows, type: ``exit'' in the console xterm.  You can cus-
  436. tomize your X by creating .xinitrc, .xserverrc, and .twmrc files in your home
  437. directory as described in the xinit and startx man pages.
  438.  
  439.  
  440. 6.  Rebuilding Kernels for X
  441.  
  442. The GENERIC FreeBSD kernels support XFree86 without any modifications required.
  443. You do not need to make any changes to the GENERIC kernel or any kernel config-
  444. uration which is a superset.
  445.  
  446. For a general description of BSD kernel configuration get smm.02.config.ps.Z
  447. <URL:ftp://gatekeeper.dec.com/pub/BSD/manuals/smm.02.config.ps.Z>.  It is a
  448. ready-to-print postscript copy of the kernel configuration chapter from the
  449. system maintainers manual.
  450.  
  451. If you do decide to reduce your kernel configuration file, do not remove the
  452. two lines below (in /sys/arch/i386/conf).  They are both required for X sup-
  453. port:
  454.  
  455.       options        XSERVER        #Xserver
  456.       options        UCONSOLE       #X Console support
  457.  
  458.  
  459.  
  460.  
  461.  
  462.  
  463.  
  464.  
  465.  
  466.  README for XFree86 on FreeBSD
  467.  
  468.  
  469.  
  470. The generic FreeBSD kernels are configured by default with the syscons driver.
  471. To configure your kernel similarly it should have a line like this in
  472. /usr/src/sys/i386/conf/GENERIC:
  473.  
  474.       device        sc0  at isa? port "IO_KBD" tty irq 1 vector scintr
  475.  
  476. The number of virtual consoles can be set using the NCONS option:
  477.  
  478.       options        "NCONS=4"       #4 virtual consoles
  479.  
  480. Otherwise, the default without a line like this is 12.    You must have more VTs
  481. than gettys as described in the end of section 3, and 4 is a reasonable mini-
  482. mum.
  483.  
  484. The server supports several console drivers: pccons, syscons and pcvt.    The
  485. syscons driver is the default in FreeBSD 1.1.5 and higher.  They are detected
  486. at runtime and no configuration of the server itself is required.
  487.  
  488. The XFree86 servers include support for the MIT-SHM extension.    The GENERIC
  489. kernel does not support this, so if you want to make use of this, you will need
  490. a kernel configured with SYSV shared memory support.  To do this, add the fol-
  491. lowing line to your kernel config file:
  492.  
  493.       options        SYSVSHM        # System V shared memory
  494.       options        SYSVSEM        # System V semaphores
  495.       options        SYSVMSG        # System V message queues
  496.  
  497. If you are using a SoundBlaster 16 on IRQ 2 (9), then you need a patch for
  498. sb16_dsp.c.  Otherwise a kernel configured with the SoundBlaster driver will
  499. claim interrupt 9 doesn't exist and X server will lock up.
  500.  
  501. S3 cards and serial port COM 4 cannot be installed together on a system because
  502. the I/O port addresses overlap.
  503.  
  504.  
  505. 7.  Building X Clients
  506.  
  507. The easiest way to build a new client (X application) is to use xmkmf if an
  508. Imakefile is included with it.    Type ``xmkmf -a'' to create the Makefiles, then
  509. type ``make''.    Whenever you install additional man pages you should update
  510. whatis.db by running ``makewhatis /usr/X11R6/man''.
  511.  
  512. Note: Starting with XFree86 2.1 and FreeBSD 1.1, the symbol __386BSD__ no
  513. longer gets defined either by the compiler or via the X config files for
  514. FreeBSD systems.  When porting clients to BSD systems, make use of the symbol
  515. BSD for code which is truly BSD-specific.  The value of the symbol can be used
  516. to distinguish different BSD releases.    For example, code specific to the Net-2
  517. and later releases can use:
  518.  
  519.      #if (BSD >= 199103)
  520.  
  521. To ensure that this symbol is correctly defined, include <sys/param.h> in the
  522. source that requires it.  Note that the symbol CSRG_BASED is defined for *BSD
  523. systems in XFree86 3.1.1 and later.  This should be used to protect the
  524.  
  525.  
  526.  
  527.  
  528.  
  529.  
  530.  
  531.  
  532.  README for XFree86 on FreeBSD
  533.  
  534.  
  535.  
  536. inclusion of <sys/param.h>.
  537.  
  538. For code that really is specific to a particular i386 BSD port, use __FreeBSD__
  539. for FreeBSD, __NetBSD__ for NetBSD, __OpenBSD__ for OpenBSD, __386BSD__ for
  540. 386BSD, and __bsdi__ for BSD/386.
  541.  
  542.  
  543. 8.  Thanks
  544.  
  545. Many thanks to:
  546.  
  547.    o Pace Willison  for providing initial *BSD support.
  548.  
  549.    o Amancio Hasty for 386BSD kernel and S3 chipset support.
  550.  
  551.    o David Greenman, Nate Williams, Jordan Hubbard for FreeBSD kernel support.
  552.  
  553.    o Rod Grimes, Jordan Hubbard and Jack Velte for the use of Walnut Creek
  554.      Cdrom's hardware.
  555.  
  556.    o Orest Zborowski, Simon Cooper and Dirk Hohndel for ideas from the Linux
  557.      distribution.
  558.  
  559.      Generated from XFree86: xc/programs/Xserver/hw/xfree86/doc/sgml/FreeBSD.sgml,v 3.25.2.1 1997/05/17 12:03:29 dawes Exp $
  560.  
  561.  
  562.  
  563.  
  564.  
  565.      $XConsortium: FreeBSD.sgml /main/12 1996/10/28 05:43:08 kaleb $
  566.  
  567.  
  568.  
  569.  
  570.  
  571.  
  572.  
  573.  
  574.  
  575.  
  576.  
  577.  
  578.  
  579.  
  580.  
  581.  
  582.  
  583.  
  584.  
  585.  
  586.  
  587.  
  588.  
  589.  
  590.  
  591.  
  592.  
  593.  
  594.  
  595.  
  596.  
  597.  
  598.  README for XFree86 on FreeBSD
  599.  
  600.  
  601.  
  602.  
  603.  
  604.  
  605.  
  606.  
  607.  
  608.  
  609.  
  610.  
  611.  
  612.  
  613.  
  614.  
  615.  
  616.  
  617.  
  618.  
  619.  
  620.  
  621.  
  622.  
  623.  
  624.  
  625.  
  626.  
  627.  
  628.  
  629.  
  630.  
  631.  
  632.  
  633.  
  634.  
  635.  
  636.  
  637.  
  638.  
  639.  
  640.  
  641.  
  642.  
  643.  
  644.  
  645.  
  646.  
  647.  
  648.  
  649.  
  650.  
  651.  
  652.  
  653.  
  654.  
  655.  
  656.  
  657.  
  658.  
  659.  
  660.  
  661.  
  662.  
  663.  
  664.  
  665.  
  666.  
  667.  
  668.                    CONTENTS
  669.  
  670.  
  671.  
  672. 1. What and Where is XFree86? ............................................... 1
  673.  
  674. 2. Installing the Binaries .................................................. 1
  675.    2.1 Full Install: ........................................................ 4
  676.    2.2 Minimal Install: ..................................................... 5
  677.    2.3 After either Full or Minimal Install above: .......................... 5
  678.  
  679. 3. Installing The Display Manager (xdm) ..................................... 6
  680.  
  681. 4. Configuring X for Your Hardware .......................................... 6
  682.  
  683. 5. Running X ................................................................ 7
  684.  
  685. 6. Rebuilding Kernels for X ................................................. 7
  686.  
  687. 7. Building X Clients ....................................................... 8
  688.  
  689. 8. Thanks ................................................................... 9
  690.  
  691.  
  692.  
  693.  
  694.  
  695.  
  696.  
  697.  
  698.  
  699.  
  700.  
  701.  
  702.  
  703.  
  704.  
  705.  
  706.  
  707.  
  708.  
  709.  
  710.  
  711.  
  712.  
  713.  
  714.  
  715.  
  716.  
  717.  
  718.  
  719.  
  720.  
  721.  
  722.  
  723.  
  724.                        i
  725.  
  726.  
  727.